[INFO] fetching crate golang-ipc-rs 0.1.1...
[INFO] fixing golang-ipc-rs-0.1.1 against try#622891a4e29178280638a6b63a8908bde2c0c854+cargoflags=-Zfix-edition=end=2015,2024 for pr-157817-2
[INFO] extracting crate golang-ipc-rs 0.1.1 into /workspace/builds/worker-4-tc2/source
[INFO] started tweaking crates.io crate golang-ipc-rs 0.1.1
[INFO] removed 0 missing examples
[INFO] finished tweaking crates.io crate golang-ipc-rs 0.1.1
[INFO] tweaked toml for crates.io crate golang-ipc-rs 0.1.1 written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate golang-ipc-rs 0.1.1 on toolchain 622891a4e29178280638a6b63a8908bde2c0c854
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate golang-ipc-rs 0.1.1 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] e923ae9a9e80def548a9c91079843860d3c9fb09f6d7ed87403737b7d1fcf23c
[INFO] running `Command { std: "docker" "start" "e923ae9a9e80def548a9c91079843860d3c9fb09f6d7ed87403737b7d1fcf23c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "e923ae9a9e80def548a9c91079843860d3c9fb09f6d7ed87403737b7d1fcf23c" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "e923ae9a9e80def548a9c91079843860d3c9fb09f6d7ed87403737b7d1fcf23c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=" "-e" "RUSTDOCFLAGS=" "-w" "/opt/rustwide/workdir" "--user" "0:0" "e923ae9a9e80def548a9c91079843860d3c9fb09f6d7ed87403737b7d1fcf23c" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fix" "--allow-no-vcs" "--allow-dirty" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zfix-edition=end=2015,2024", kill_on_drop: false }`
[INFO] [stderr] crater-edition-check: migrating to next edition
[INFO] [stderr]    Migrating Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Compiling libc v0.2.159
[INFO] [stderr]    Compiling proc-macro2 v1.0.86
[INFO] [stderr]    Compiling unicode-ident v1.0.13
[INFO] [stderr]     Checking zeroize v1.8.1
[INFO] [stderr]    Compiling typenum v1.17.0
[INFO] [stderr]     Checking subtle v2.6.1
[INFO] [stderr]     Checking const-oid v0.9.6
[INFO] [stderr]     Checking pin-project-lite v0.2.14
[INFO] [stderr]     Checking futures-core v0.3.31
[INFO] [stderr]     Checking base64ct v1.6.0
[INFO] [stderr]     Checking smallvec v1.13.2
[INFO] [stderr]    Compiling semver v1.0.23
[INFO] [stderr]     Checking once_cell v1.20.1
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling lock_api v0.4.12
[INFO] [stderr]    Compiling slab v0.4.9
[INFO] [stderr]     Checking futures-sink v0.3.31
[INFO] [stderr]     Checking pem-rfc7468 v0.7.0
[INFO] [stderr]    Compiling parking_lot_core v0.9.10
[INFO] [stderr]     Checking log v0.4.22
[INFO] [stderr]     Checking memchr v2.7.4
[INFO] [stderr]     Checking cpufeatures v0.2.14
[INFO] [stderr]     Checking futures-io v0.3.31
[INFO] [stderr]     Checking pin-utils v0.1.0
[INFO] [stderr]     Checking futures-task v0.3.31
[INFO] [stderr]     Checking futures-channel v0.3.31
[INFO] [stderr]    Compiling crossbeam-utils v0.8.20
[INFO] [stderr]     Checking byteorder v1.5.0
[INFO] [stderr]     Checking base16ct v0.2.0
[INFO] [stderr]     Checking bytes v1.7.2
[INFO] [stderr]     Checking opaque-debug v0.3.1
[INFO] [stderr]     Checking regex-syntax v0.6.29
[INFO] [stderr]     Checking tracing-core v0.1.32
[INFO] [stderr]     Checking regex-syntax v0.8.5
[INFO] [stderr]     Checking anstyle-parse v0.2.5
[INFO] [stderr]     Checking der v0.7.9
[INFO] [stderr]     Checking overload v0.1.1
[INFO] [stderr]    Compiling anyhow v1.0.89
[INFO] [stderr]     Checking anstyle-query v1.1.1
[INFO] [stderr]     Checking colorchoice v1.0.2
[INFO] [stderr]     Checking anstyle v1.0.8
[INFO] [stderr]    Compiling rustc_version v0.4.1
[INFO] [stderr]     Checking is_terminal_polyfill v1.70.1
[INFO] [stderr]     Checking nu-ansi-term v0.46.0
[INFO] [stderr]    Compiling quote v1.0.37
[INFO] [stderr]     Checking tracing-log v0.2.0
[INFO] [stderr]     Checking anstream v0.6.15
[INFO] [stderr]     Checking thread_local v1.1.8
[INFO] [stderr]     Checking getrandom v0.2.15
[INFO] [stderr]     Checking mio v1.0.2
[INFO] [stderr]     Checking signal-hook-registry v1.4.2
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking socket2 v0.5.7
[INFO] [stderr]     Checking parking_lot v0.12.3
[INFO] [stderr]    Compiling aho-corasick v1.1.3
[INFO] [stderr]     Checking inotify-sys v0.1.5
[INFO] [stderr]    Compiling syn v2.0.79
[INFO] [stderr]     Checking ff v0.13.0
[INFO] [stderr]    Compiling rstest_macros v0.19.0
[INFO] [stderr]     Checking dirs-sys v0.4.1
[INFO] [stderr]     Checking filetime v0.2.25
[INFO] [stderr]     Checking inotify v0.9.6
[INFO] [stderr]     Checking mio v0.8.11
[INFO] [stderr]     Checking dirs v5.0.1
[INFO] [stderr]     Checking group v0.13.0
[INFO] [stderr]     Checking nanorand v0.7.0
[INFO] [stderr]     Checking crossbeam-channel v0.5.15
[INFO] [stderr]     Checking sysinfo v0.28.4
[INFO] [stderr]     Checking spin v0.9.8
[INFO] [stderr]     Checking clap_lex v0.7.2
[INFO] [stderr]    Compiling relative-path v1.9.3
[INFO] [stderr]     Checking hex v0.4.3
[INFO] [stderr]     Checking futures-timer v3.0.3
[INFO] [stderr]     Checking clap_builder v4.5.20
[INFO] [stderr]     Checking flume v0.11.0
[INFO] [stderr]     Checking notify v5.2.0
[INFO] [stderr]     Checking crypto-common v0.1.6
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]     Checking inout v0.1.3
[INFO] [stderr]     Checking crypto-bigint v0.5.5
[INFO] [stderr]     Checking universal-hash v0.5.1
[INFO] [stderr]     Checking aead v0.5.2
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking cipher v0.4.4
[INFO] [stderr]     Checking hmac v0.12.1
[INFO] [stderr]     Checking signature v2.2.0
[INFO] [stderr]     Checking sha2 v0.10.8
[INFO] [stderr]     Checking polyval v0.6.2
[INFO] [stderr]     Checking hkdf v0.12.4
[INFO] [stderr]     Checking rfc6979 v0.4.0
[INFO] [stderr]    Compiling regex-automata v0.4.8
[INFO] [stderr]     Checking ghash v0.5.1
[INFO] [stderr]     Checking spki v0.7.3
[INFO] [stderr]     Checking ctr v0.9.2
[INFO] [stderr]     Checking aes v0.8.4
[INFO] [stderr]     Checking aes-gcm v0.10.3
[INFO] [stderr]     Checking pkcs8 v0.10.2
[INFO] [stderr]     Checking sec1 v0.7.3
[INFO] [stderr]     Checking regex-automata v0.1.10
[INFO] [stderr]     Checking elliptic-curve v0.13.8
[INFO] [stderr]     Checking regex v1.11.0
[INFO] [stderr]     Checking primeorder v0.13.6
[INFO] [stderr]     Checking ecdsa v0.16.9
[INFO] [stderr]     Checking matchers v0.1.0
[INFO] [stderr]     Checking p384 v0.13.0
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling tokio-macros v2.4.0
[INFO] [stderr]    Compiling zerocopy-derive v0.7.35
[INFO] [stderr]    Compiling tracing-attributes v0.1.27
[INFO] [stderr]    Compiling async-stream-impl v0.3.6
[INFO] [stderr]    Compiling tracing-test-macro v0.2.5
[INFO] [stderr]    Compiling clap_derive v4.5.18
[INFO] [stderr]     Checking async-stream v0.3.6
[INFO] [stderr]     Checking tokio v1.40.0
[INFO] [stderr]     Checking zerocopy v0.7.35
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]     Checking tracing v0.1.40
[INFO] [stderr]     Checking tracing-subscriber v0.3.18
[INFO] [stderr]     Checking ppv-lite86 v0.2.20
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking clap v4.5.20
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking tracing-test v0.2.5
[INFO] [stderr]     Checking futures-executor v0.3.31
[INFO] [stderr]     Checking futures v0.3.31
[INFO] [stderr]     Checking yaque v0.6.6
[INFO] [stderr]     Checking rstest v0.19.0
[INFO] [stderr]     Checking tipsy v0.3.1
[INFO] [stderr]     Checking tokio-stream v0.1.16
[INFO] [stderr]     Checking async-stdin v0.3.1
[INFO] [stderr]     Checking golang-ipc-rs v0.1.1 (/opt/rustwide/workdir)
[INFO] [stderr]    Migrating src/lib.rs from 2021 edition to 2024
[INFO] [stderr]     Checking tokio-test v0.4.4
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/client.rs:79:31
[INFO] [stdout]     |
[INFO] [stdout]  78 |             let mut context: Context = context;
[INFO] [stdout]     |                 -----------
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 `context` calls a custom destructor
[INFO] [stdout]     |                 `context` will be dropped later as of Edition 2024
[INFO] [stdout]  79 |             if let Err(err) = context.run().await {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^-----
[INFO] [stdout]     |                               |             |
[INFO] [stdout]     |                               |             this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                               |             up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                               up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  82 |         });
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.89/src/error.rs:597:1
[INFO] [stdout]     |
[INFO] [stdout] 597 | impl Drop for Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `context` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/flume-0.11.0/src/lib.rs:994:1
[INFO] [stdout]     |
[INFO] [stdout] 994 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `context` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/flume-0.11.0/src/lib.rs:813:1
[INFO] [stdout]     |
[INFO] [stdout] 813 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/client.rs:79:45
[INFO] [stdout]     |
[INFO] [stdout]  78 |             let mut context: Context = context;
[INFO] [stdout]     |                 -----------
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 `context` calls a custom destructor
[INFO] [stdout]     |                 `context` will be dropped later as of Edition 2024
[INFO] [stdout]  79 |             if let Err(err) = context.run().await {
[INFO] [stdout]     |                                             ^^^^^
[INFO] [stdout]     |                                             |
[INFO] [stdout]     |                                             this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                             up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  82 |         });
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `context` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/flume-0.11.0/src/lib.rs:994:1
[INFO] [stdout]     |
[INFO] [stdout] 994 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `context` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/flume-0.11.0/src/lib.rs:813:1
[INFO] [stdout]     |
[INFO] [stdout] 813 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/message.rs:209:44
[INFO] [stdout]      |
[INFO] [stdout]  204 | /         tokio::select! {
[INFO] [stdout]  205 | |             result = Message::from_stream(&mut connection) => {
[INFO] [stdout]      | |             ------
[INFO] [stdout]      | |             |
[INFO] [stdout]      | |             `result` calls a custom destructor
[INFO] [stdout]      | |             `result` will be dropped later as of Edition 2024
[INFO] [stdout]  206 | |                 match result {
[INFO] [stdout]  207 | |                     Ok(Some(message)) => {
[INFO] [stdout]  208 | |                         // We received a message over the socket, so send it to the consumer
[INFO] [stdout]  209 | |                         if let Err(_err) = context.get_channel().send(message).await {
[INFO] [stdout]      | |                                    ----    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      | |                                    |       |                                   |
[INFO] [stdout]      | |                                    |       |                                   this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]      | |                                    |       |                                   up until Edition 2021 `#9` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      | |                                    |       |                                   this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      | |                                    |       |                                   `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                                    |       this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      | |                                    |       up until Edition 2021 `#8` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      | |                                    |       `__awaitee` calls a custom destructor
[INFO] [stdout]      | |                                    |       `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                                    `_err` calls a custom destructor
[INFO] [stdout]      | |                                    `_err` will be dropped later as of Edition 2024
[INFO] [stdout]  210 | |                             context.report_error_status(anyhow!("Dropped message")).await;
[INFO] [stdout]      | |                             -------------------------------------------------------------
[INFO] [stdout]      | |                             |
[INFO] [stdout]      | |                             this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      | |                             `#3` will be dropped later as of Edition 2024
[INFO] [stdout]  211 | |                         }
[INFO] [stdout]  212 | |                     },
[INFO] [stdout]      | |                     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...    |
[INFO] [stdout]  238 | |             to_send = context.get_channel().recv() => {
[INFO] [stdout]      | |             -------
[INFO] [stdout]      | |             |
[INFO] [stdout]      | |             `to_send` calls a custom destructor
[INFO] [stdout]      | |             `to_send` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout]  242 | |                         if let Err(err) = Message::to_stream(&mut connection, message).await {
[INFO] [stdout]      | |                                           --------------------------------------------------
[INFO] [stdout]      | |                                           |                                            |
[INFO] [stdout]      | |                                           |                                            this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      | |                                           |                                            `#5` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                                           this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      | |                                           `#4` will be dropped later as of Edition 2024
[INFO] [stdout]  243 | |                             // TODO: The message is dropped in this case.  Can we put it back into `context.get_channel()`?
[INFO] [stdout]  244 | |                             context.report_error_status(err).await;
[INFO] [stdout]      | |                             --------------------------------------
[INFO] [stdout]      | |                             |
[INFO] [stdout]      | |                             this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      | |                             `#6` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout]  248 | |                         context.report_error_status(anyhow!("bad recv")).await;
[INFO] [stdout]      | |                         ------------------------------------------------------
[INFO] [stdout]      | |                         |
[INFO] [stdout]      | |                         this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      | |                         `#7` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout]  251 | |             },
[INFO] [stdout]  252 | |         };
[INFO] [stdout]      | |         -
[INFO] [stdout]      | |         |
[INFO] [stdout]      | |         `output` calls a custom destructor
[INFO] [stdout]      | |         `output` will be dropped later as of Edition 2024
[INFO] [stdout]      | |         `futures_init` calls a custom destructor
[INFO] [stdout]      | |         `futures_init` will be dropped later as of Edition 2024
[INFO] [stdout]      | |         `futures` calls a custom destructor
[INFO] [stdout]      | |         `futures` will be dropped later as of Edition 2024
[INFO] [stdout]      | |_________this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |           `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.2/src/bytes_mut.rs:1121:1
[INFO] [stdout]      |
[INFO] [stdout] 1121 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `output` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.2/src/bytes_mut.rs:1121:1
[INFO] [stdout]      |
[INFO] [stdout] 1121 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `output` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.89/src/error.rs:597:1
[INFO] [stdout]      |
[INFO] [stdout]  597 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.2/src/bytes_mut.rs:1121:1
[INFO] [stdout]      |
[INFO] [stdout] 1121 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.89/src/error.rs:597:1
[INFO] [stdout]      |
[INFO] [stdout]  597 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.89/src/error.rs:597:1
[INFO] [stdout]      |
[INFO] [stdout]  597 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.2/src/bytes_mut.rs:1121:1
[INFO] [stdout]      |
[INFO] [stdout] 1121 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.2/src/bytes_mut.rs:1121:1
[INFO] [stdout]      |
[INFO] [stdout] 1121 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `_err` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.2/src/bytes_mut.rs:1121:1
[INFO] [stdout]      |
[INFO] [stdout] 1121 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `to_send` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.2/src/bytes_mut.rs:1121:1
[INFO] [stdout]      |
[INFO] [stdout] 1121 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.89/src/error.rs:597:1
[INFO] [stdout]      |
[INFO] [stdout]  597 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/message.rs:242:43
[INFO] [stdout]      |
[INFO] [stdout]  204 | /         tokio::select! {
[INFO] [stdout]  205 | |             result = Message::from_stream(&mut connection) => {
[INFO] [stdout]      | |             ------
[INFO] [stdout]      | |             |
[INFO] [stdout]      | |             `result` calls a custom destructor
[INFO] [stdout]      | |             `result` will be dropped later as of Edition 2024
[INFO] [stdout]  206 | |                 match result {
[INFO] [stdout]  207 | |                     Ok(Some(message)) => {
[INFO] [stdout]  208 | |                         // We received a message over the socket, so send it to the consumer
[INFO] [stdout]  209 | |                         if let Err(_err) = context.get_channel().send(message).await {
[INFO] [stdout]      | |                                    ----    -----------------------------------------
[INFO] [stdout]      | |                                    |       |                                   |
[INFO] [stdout]      | |                                    |       |                                   this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      | |                                    |       |                                   `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                                    |       `__awaitee` calls a custom destructor
[INFO] [stdout]      | |                                    |       `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                                    `_err` calls a custom destructor
[INFO] [stdout]      | |                                    `_err` will be dropped later as of Edition 2024
[INFO] [stdout]  210 | |                             context.report_error_status(anyhow!("Dropped message")).await;
[INFO] [stdout]      | |                             -------------------------------------------------------------
[INFO] [stdout]      | |                             |
[INFO] [stdout]      | |                             this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      | |                             `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout]  238 | |             to_send = context.get_channel().recv() => {
[INFO] [stdout]      | |             -------
[INFO] [stdout]      | |             |
[INFO] [stdout]      | |             `to_send` calls a custom destructor
[INFO] [stdout]      | |             `to_send` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout]  242 | |                         if let Err(err) = Message::to_stream(&mut connection, message).await {
[INFO] [stdout]      | |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      | |                                           |                                            |
[INFO] [stdout]      | |                                           |                                            this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]      | |                                           |                                            up until Edition 2021 `#9` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      | |                                           |                                            this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      | |                                           |                                            `#5` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                                           this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      | |                                           up until Edition 2021 `#8` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      | |                                           this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      | |                                           `#4` will be dropped later as of Edition 2024
[INFO] [stdout]  243 | |                             // TODO: The message is dropped in this case.  Can we put it back into `context.get_channel()`?
[INFO] [stdout]  244 | |                             context.report_error_status(err).await;
[INFO] [stdout]      | |                             --------------------------------------
[INFO] [stdout]      | |                             |
[INFO] [stdout]      | |                             this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      | |                             `#6` will be dropped later as of Edition 2024
[INFO] [stdout]  245 | |                         }
[INFO] [stdout]  246 | |                     },
[INFO] [stdout]      | |                     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]  247 | |                     None => {
[INFO] [stdout]  248 | |                         context.report_error_status(anyhow!("bad recv")).await;
[INFO] [stdout]      | |                         ------------------------------------------------------
[INFO] [stdout]      | |                         |
[INFO] [stdout]      | |                         this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      | |                         `#7` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout]  251 | |             },
[INFO] [stdout]  252 | |         };
[INFO] [stdout]      | |         -
[INFO] [stdout]      | |         |
[INFO] [stdout]      | |         `output` calls a custom destructor
[INFO] [stdout]      | |         `output` will be dropped later as of Edition 2024
[INFO] [stdout]      | |         `futures_init` calls a custom destructor
[INFO] [stdout]      | |         `futures_init` will be dropped later as of Edition 2024
[INFO] [stdout]      | |         `futures` calls a custom destructor
[INFO] [stdout]      | |         `futures` will be dropped later as of Edition 2024
[INFO] [stdout]      | |_________this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |           `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.89/src/error.rs:597:1
[INFO] [stdout]      |
[INFO] [stdout]  597 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `output` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.2/src/bytes_mut.rs:1121:1
[INFO] [stdout]      |
[INFO] [stdout] 1121 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `output` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.89/src/error.rs:597:1
[INFO] [stdout]      |
[INFO] [stdout]  597 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.2/src/bytes_mut.rs:1121:1
[INFO] [stdout]      |
[INFO] [stdout] 1121 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.89/src/error.rs:597:1
[INFO] [stdout]      |
[INFO] [stdout]  597 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.89/src/error.rs:597:1
[INFO] [stdout]      |
[INFO] [stdout]  597 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.2/src/bytes_mut.rs:1121:1
[INFO] [stdout]      |
[INFO] [stdout] 1121 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.2/src/bytes_mut.rs:1121:1
[INFO] [stdout]      |
[INFO] [stdout] 1121 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `_err` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.2/src/bytes_mut.rs:1121:1
[INFO] [stdout]      |
[INFO] [stdout] 1121 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `to_send` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.2/src/bytes_mut.rs:1121:1
[INFO] [stdout]      |
[INFO] [stdout] 1121 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.89/src/error.rs:597:1
[INFO] [stdout]      |
[INFO] [stdout]  597 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/server.rs:68:31
[INFO] [stdout]     |
[INFO] [stdout]  67 |             let mut context: Context = context;
[INFO] [stdout]     |                 -----------
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 `context` calls a custom destructor
[INFO] [stdout]     |                 `context` will be dropped later as of Edition 2024
[INFO] [stdout]  68 |             if let Err(err) = Server::run_server(&mut context).await {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |                               |                                |
[INFO] [stdout]     |                               |                                this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                               |                                up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                               up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  71 |         });
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.89/src/error.rs:597:1
[INFO] [stdout]     |
[INFO] [stdout] 597 | impl Drop for Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `context` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/flume-0.11.0/src/lib.rs:994:1
[INFO] [stdout]     |
[INFO] [stdout] 994 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `context` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/flume-0.11.0/src/lib.rs:813:1
[INFO] [stdout]     |
[INFO] [stdout] 813 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/server.rs:68:64
[INFO] [stdout]     |
[INFO] [stdout]  67 |             let mut context: Context = context;
[INFO] [stdout]     |                 -----------
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 `context` calls a custom destructor
[INFO] [stdout]     |                 `context` will be dropped later as of Edition 2024
[INFO] [stdout]  68 |             if let Err(err) = Server::run_server(&mut context).await {
[INFO] [stdout]     |                                                                ^^^^^
[INFO] [stdout]     |                                                                |
[INFO] [stdout]     |                                                                this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  71 |         });
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `context` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/flume-0.11.0/src/lib.rs:994:1
[INFO] [stdout]     |
[INFO] [stdout] 994 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `context` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/flume-0.11.0/src/lib.rs:813:1
[INFO] [stdout]     |
[INFO] [stdout] 813 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/client.rs:79:31
[INFO] [stdout]     |
[INFO] [stdout]  78 |             let mut context: Context = context;
[INFO] [stdout]     |                 -----------
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 `context` calls a custom destructor
[INFO] [stdout]     |                 `context` will be dropped later as of Edition 2024
[INFO] [stdout]  79 |             if let Err(err) = context.run().await {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^-----
[INFO] [stdout]     |                               |             |
[INFO] [stdout]     |                               |             this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                               |             up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                               up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  82 |         });
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.89/src/error.rs:597:1
[INFO] [stdout]     |
[INFO] [stdout] 597 | impl Drop for Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `context` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/flume-0.11.0/src/lib.rs:994:1
[INFO] [stdout]     |
[INFO] [stdout] 994 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `context` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/flume-0.11.0/src/lib.rs:813:1
[INFO] [stdout]     |
[INFO] [stdout] 813 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/client.rs:79:45
[INFO] [stdout]     |
[INFO] [stdout]  78 |             let mut context: Context = context;
[INFO] [stdout]     |                 -----------
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 `context` calls a custom destructor
[INFO] [stdout]     |                 `context` will be dropped later as of Edition 2024
[INFO] [stdout]  79 |             if let Err(err) = context.run().await {
[INFO] [stdout]     |                                             ^^^^^
[INFO] [stdout]     |                                             |
[INFO] [stdout]     |                                             this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                             up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  82 |         });
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `context` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/flume-0.11.0/src/lib.rs:994:1
[INFO] [stdout]     |
[INFO] [stdout] 994 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `context` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/flume-0.11.0/src/lib.rs:813:1
[INFO] [stdout]     |
[INFO] [stdout] 813 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/message.rs:209:44
[INFO] [stdout]      |
[INFO] [stdout]  204 | /         tokio::select! {
[INFO] [stdout]  205 | |             result = Message::from_stream(&mut connection) => {
[INFO] [stdout]      | |             ------
[INFO] [stdout]      | |             |
[INFO] [stdout]      | |             `result` calls a custom destructor
[INFO] [stdout]      | |             `result` will be dropped later as of Edition 2024
[INFO] [stdout]  206 | |                 match result {
[INFO] [stdout]  207 | |                     Ok(Some(message)) => {
[INFO] [stdout]  208 | |                         // We received a message over the socket, so send it to the consumer
[INFO] [stdout]  209 | |                         if let Err(_err) = context.get_channel().send(message).await {
[INFO] [stdout]      | |                                    ----    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      | |                                    |       |                                   |
[INFO] [stdout]      | |                                    |       |                                   this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]      | |                                    |       |                                   up until Edition 2021 `#9` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      | |                                    |       |                                   this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      | |                                    |       |                                   `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                                    |       this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      | |                                    |       up until Edition 2021 `#8` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      | |                                    |       `__awaitee` calls a custom destructor
[INFO] [stdout]      | |                                    |       `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                                    `_err` calls a custom destructor
[INFO] [stdout]      | |                                    `_err` will be dropped later as of Edition 2024
[INFO] [stdout]  210 | |                             context.report_error_status(anyhow!("Dropped message")).await;
[INFO] [stdout]      | |                             -------------------------------------------------------------
[INFO] [stdout]      | |                             |
[INFO] [stdout]      | |                             this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      | |                             `#3` will be dropped later as of Edition 2024
[INFO] [stdout]  211 | |                         }
[INFO] [stdout]  212 | |                     },
[INFO] [stdout]      | |                     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...    |
[INFO] [stdout]  238 | |             to_send = context.get_channel().recv() => {
[INFO] [stdout]      | |             -------
[INFO] [stdout]      | |             |
[INFO] [stdout]      | |             `to_send` calls a custom destructor
[INFO] [stdout]      | |             `to_send` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout]  242 | |                         if let Err(err) = Message::to_stream(&mut connection, message).await {
[INFO] [stdout]      | |                                           --------------------------------------------------
[INFO] [stdout]      | |                                           |                                            |
[INFO] [stdout]      | |                                           |                                            this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      | |                                           |                                            `#5` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                                           this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      | |                                           `#4` will be dropped later as of Edition 2024
[INFO] [stdout]  243 | |                             // TODO: The message is dropped in this case.  Can we put it back into `context.get_channel()`?
[INFO] [stdout]  244 | |                             context.report_error_status(err).await;
[INFO] [stdout]      | |                             --------------------------------------
[INFO] [stdout]      | |                             |
[INFO] [stdout]      | |                             this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      | |                             `#6` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout]  248 | |                         context.report_error_status(anyhow!("bad recv")).await;
[INFO] [stdout]      | |                         ------------------------------------------------------
[INFO] [stdout]      | |                         |
[INFO] [stdout]      | |                         this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      | |                         `#7` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout]  251 | |             },
[INFO] [stdout]  252 | |         };
[INFO] [stdout]      | |         -
[INFO] [stdout]      | |         |
[INFO] [stdout]      | |         `output` calls a custom destructor
[INFO] [stdout]      | |         `output` will be dropped later as of Edition 2024
[INFO] [stdout]      | |         `futures_init` calls a custom destructor
[INFO] [stdout]      | |         `futures_init` will be dropped later as of Edition 2024
[INFO] [stdout]      | |         `futures` calls a custom destructor
[INFO] [stdout]      | |         `futures` will be dropped later as of Edition 2024
[INFO] [stdout]      | |_________this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |           `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.2/src/bytes_mut.rs:1121:1
[INFO] [stdout]      |
[INFO] [stdout] 1121 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `output` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.2/src/bytes_mut.rs:1121:1
[INFO] [stdout]      |
[INFO] [stdout] 1121 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `output` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.89/src/error.rs:597:1
[INFO] [stdout]      |
[INFO] [stdout]  597 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.2/src/bytes_mut.rs:1121:1
[INFO] [stdout]      |
[INFO] [stdout] 1121 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.89/src/error.rs:597:1
[INFO] [stdout]      |
[INFO] [stdout]  597 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.89/src/error.rs:597:1
[INFO] [stdout]      |
[INFO] [stdout]  597 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.2/src/bytes_mut.rs:1121:1
[INFO] [stdout]      |
[INFO] [stdout] 1121 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.2/src/bytes_mut.rs:1121:1
[INFO] [stdout]      |
[INFO] [stdout] 1121 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `_err` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.2/src/bytes_mut.rs:1121:1
[INFO] [stdout]      |
[INFO] [stdout] 1121 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `to_send` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.2/src/bytes_mut.rs:1121:1
[INFO] [stdout]      |
[INFO] [stdout] 1121 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.89/src/error.rs:597:1
[INFO] [stdout]      |
[INFO] [stdout]  597 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/message.rs:242:43
[INFO] [stdout]      |
[INFO] [stdout]  204 | /         tokio::select! {
[INFO] [stdout]  205 | |             result = Message::from_stream(&mut connection) => {
[INFO] [stdout]      | |             ------
[INFO] [stdout]      | |             |
[INFO] [stdout]      | |             `result` calls a custom destructor
[INFO] [stdout]      | |             `result` will be dropped later as of Edition 2024
[INFO] [stdout]  206 | |                 match result {
[INFO] [stdout]  207 | |                     Ok(Some(message)) => {
[INFO] [stdout]  208 | |                         // We received a message over the socket, so send it to the consumer
[INFO] [stdout]  209 | |                         if let Err(_err) = context.get_channel().send(message).await {
[INFO] [stdout]      | |                                    ----    -----------------------------------------
[INFO] [stdout]      | |                                    |       |                                   |
[INFO] [stdout]      | |                                    |       |                                   this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      | |                                    |       |                                   `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                                    |       `__awaitee` calls a custom destructor
[INFO] [stdout]      | |                                    |       `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                                    `_err` calls a custom destructor
[INFO] [stdout]      | |                                    `_err` will be dropped later as of Edition 2024
[INFO] [stdout]  210 | |                             context.report_error_status(anyhow!("Dropped message")).await;
[INFO] [stdout]      | |                             -------------------------------------------------------------
[INFO] [stdout]      | |                             |
[INFO] [stdout]      | |                             this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      | |                             `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout]  238 | |             to_send = context.get_channel().recv() => {
[INFO] [stdout]      | |             -------
[INFO] [stdout]      | |             |
[INFO] [stdout]      | |             `to_send` calls a custom destructor
[INFO] [stdout]      | |             `to_send` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout]  242 | |                         if let Err(err) = Message::to_stream(&mut connection, message).await {
[INFO] [stdout]      | |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      | |                                           |                                            |
[INFO] [stdout]      | |                                           |                                            this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]      | |                                           |                                            up until Edition 2021 `#9` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      | |                                           |                                            this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      | |                                           |                                            `#5` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                                           this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      | |                                           up until Edition 2021 `#8` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      | |                                           this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      | |                                           `#4` will be dropped later as of Edition 2024
[INFO] [stdout]  243 | |                             // TODO: The message is dropped in this case.  Can we put it back into `context.get_channel()`?
[INFO] [stdout]  244 | |                             context.report_error_status(err).await;
[INFO] [stdout]      | |                             --------------------------------------
[INFO] [stdout]      | |                             |
[INFO] [stdout]      | |                             this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      | |                             `#6` will be dropped later as of Edition 2024
[INFO] [stdout]  245 | |                         }
[INFO] [stdout]  246 | |                     },
[INFO] [stdout]      | |                     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]  247 | |                     None => {
[INFO] [stdout]  248 | |                         context.report_error_status(anyhow!("bad recv")).await;
[INFO] [stdout]      | |                         ------------------------------------------------------
[INFO] [stdout]      | |                         |
[INFO] [stdout]      | |                         this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      | |                         `#7` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout]  251 | |             },
[INFO] [stdout]  252 | |         };
[INFO] [stdout]      | |         -
[INFO] [stdout]      | |         |
[INFO] [stdout]      | |         `output` calls a custom destructor
[INFO] [stdout]      | |         `output` will be dropped later as of Edition 2024
[INFO] [stdout]      | |         `futures_init` calls a custom destructor
[INFO] [stdout]      | |         `futures_init` will be dropped later as of Edition 2024
[INFO] [stdout]      | |         `futures` calls a custom destructor
[INFO] [stdout]      | |         `futures` will be dropped later as of Edition 2024
[INFO] [stdout]      | |_________this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |           `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.89/src/error.rs:597:1
[INFO] [stdout]      |
[INFO] [stdout]  597 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `output` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.2/src/bytes_mut.rs:1121:1
[INFO] [stdout]      |
[INFO] [stdout] 1121 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `output` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.89/src/error.rs:597:1
[INFO] [stdout]      |
[INFO] [stdout]  597 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.2/src/bytes_mut.rs:1121:1
[INFO] [stdout]      |
[INFO] [stdout] 1121 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.89/src/error.rs:597:1
[INFO] [stdout]      |
[INFO] [stdout]  597 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.89/src/error.rs:597:1
[INFO] [stdout]      |
[INFO] [stdout]  597 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.2/src/bytes_mut.rs:1121:1
[INFO] [stdout]      |
[INFO] [stdout] 1121 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.2/src/bytes_mut.rs:1121:1
[INFO] [stdout]      |
[INFO] [stdout] 1121 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `_err` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.2/src/bytes_mut.rs:1121:1
[INFO] [stdout]      |
[INFO] [stdout] 1121 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `to_send` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.2/src/bytes_mut.rs:1121:1
[INFO] [stdout]      |
[INFO] [stdout] 1121 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.89/src/error.rs:597:1
[INFO] [stdout]      |
[INFO] [stdout]  597 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating examples/ipc.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/server.rs:68:31
[INFO] [stdout]     |
[INFO] [stdout]  67 |             let mut context: Context = context;
[INFO] [stdout]     |                 -----------
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 `context` calls a custom destructor
[INFO] [stdout]     |                 `context` will be dropped later as of Edition 2024
[INFO] [stdout]  68 |             if let Err(err) = Server::run_server(&mut context).await {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |                               |                                |
[INFO] [stdout]     |                               |                                this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                               |                                up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                               up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  71 |         });
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.89/src/error.rs:597:1
[INFO] [stdout]     |
[INFO] [stdout] 597 | impl Drop for Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `context` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/flume-0.11.0/src/lib.rs:994:1
[INFO] [stdout]     |
[INFO] [stdout] 994 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `context` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/flume-0.11.0/src/lib.rs:813:1
[INFO] [stdout]     |
[INFO] [stdout] 813 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/server.rs:68:64
[INFO] [stdout]     |
[INFO] [stdout]  67 |             let mut context: Context = context;
[INFO] [stdout]     |                 -----------
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 `context` calls a custom destructor
[INFO] [stdout]     |                 `context` will be dropped later as of Edition 2024
[INFO] [stdout]  68 |             if let Err(err) = Server::run_server(&mut context).await {
[INFO] [stdout]     |                                                                ^^^^^
[INFO] [stdout]     |                                                                |
[INFO] [stdout]     |                                                                this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  71 |         });
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `context` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/flume-0.11.0/src/lib.rs:994:1
[INFO] [stdout]     |
[INFO] [stdout] 994 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `context` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/flume-0.11.0/src/lib.rs:813:1
[INFO] [stdout]     |
[INFO] [stdout] 813 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]   --> src/bichannel.rs:76:35
[INFO] [stdout]    |
[INFO] [stdout] 76 |                 match main.recv().await {
[INFO] [stdout]    |                       ------------^^^^^
[INFO] [stdout]    |                       |           |
[INFO] [stdout]    |                       |           this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]    |                       |           up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]    |                       `__awaitee` calls a custom destructor
[INFO] [stdout]    |                       `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 79 |                     Some(_) => main.send("cant stop").await.unwrap(),
[INFO] [stdout]    |                                ----------------------------
[INFO] [stdout]    |                                |
[INFO] [stdout]    |                                this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]    |                                `#1` will be dropped later as of Edition 2024
[INFO] [stdout] 80 |                 }
[INFO] [stdout] 81 |             }
[INFO] [stdout]    |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]    |
[INFO] [stdout]    = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/bichannel.rs:96:35
[INFO] [stdout]     |
[INFO] [stdout]  96 |                 match main.recv().await {
[INFO] [stdout]     |                       ------------^^^^^
[INFO] [stdout]     |                       |           |
[INFO] [stdout]     |                       |           this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                       |           up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                       `__awaitee` calls a custom destructor
[INFO] [stdout]     |                       `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  99 |                     Some(_) => main.send("cant stop").await.unwrap(),
[INFO] [stdout]     |                                ----------------------------
[INFO] [stdout]     |                                |
[INFO] [stdout]     |                                this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                `#1` will be dropped later as of Edition 2024
[INFO] [stdout] 100 |                 }
[INFO] [stdout] 101 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/connection.rs:144:13
[INFO] [stdout]     |
[INFO] [stdout] 144 |             CONNECTION_LIST.push(stream);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: `--force-warn static-mut-refs` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/connection.rs:148:18
[INFO] [stdout]     |
[INFO] [stdout] 148 |         unsafe { CONNECTION_LIST.pop().expect("Missing Stream Mock") }
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/connection.rs:155:13
[INFO] [stdout]     |
[INFO] [stdout] 155 |             LISTENER_LIST.push(listener);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/connection.rs:159:18
[INFO] [stdout]     |
[INFO] [stdout] 159 |         unsafe { LISTENER_LIST.pop().expect("Missing Stream Mock") }
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> examples/ipc.rs:65:15
[INFO] [stdout]      |
[INFO] [stdout]   65 |           match tokio::time::timeout(tokio::time::Duration::from_secs(15), server.recv_message())
[INFO] [stdout]      |  _______________^
[INFO] [stdout]   66 | |             .await
[INFO] [stdout]      | |              ----^
[INFO] [stdout]      | |              |   |
[INFO] [stdout]      | |              |   this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      | |              |   up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      | |______________|___`__awaitee` calls a custom destructor
[INFO] [stdout]      |                |   `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      |                this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                up until Edition 2021 `#6` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                `#1` will be dropped later as of Edition 2024
[INFO] [stdout]   67 |           {
[INFO] [stdout]   68 |               Ok(maybe_message) => match maybe_message {
[INFO] [stdout]      |                  -------------
[INFO] [stdout]      |                  |
[INFO] [stdout]      |                  `maybe_message` calls a custom destructor
[INFO] [stdout]      |                  `maybe_message` will be dropped later as of Edition 2024
[INFO] [stdout]   69 |                   Some(message) => {
[INFO] [stdout]      |                        -------
[INFO] [stdout]      |                        |
[INFO] [stdout]      |                        `message` calls a custom destructor
[INFO] [stdout]      |                        `message` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   73 |                           server.send_message(message).await?;
[INFO] [stdout]      |                           -----------------------------------
[INFO] [stdout]      |                           |                            |
[INFO] [stdout]      |                           |                            this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                           |                            `#4` will be dropped later as of Edition 2024
[INFO] [stdout]      |                           this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                           `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      |                           this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                           `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   85 |       }
[INFO] [stdout]      |       - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.2/src/bytes_mut.rs:1121:1
[INFO] [stdout]      |
[INFO] [stdout] 1121 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.40.0/src/runtime/time/entry.rs:652:1
[INFO] [stdout]      |
[INFO] [stdout]  652 | impl Drop for TimerEntry {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `__awaitee` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.40.0/src/runtime/time/entry.rs:652:1
[INFO] [stdout]      |
[INFO] [stdout]  652 | impl Drop for TimerEntry {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.2/src/bytes_mut.rs:1121:1
[INFO] [stdout]      |
[INFO] [stdout] 1121 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `maybe_message` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.2/src/bytes_mut.rs:1121:1
[INFO] [stdout]      |
[INFO] [stdout] 1121 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `message` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.2/src/bytes_mut.rs:1121:1
[INFO] [stdout]      |
[INFO] [stdout] 1121 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.2/src/bytes_mut.rs:1121:1
[INFO] [stdout]      |
[INFO] [stdout] 1121 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.2/src/bytes_mut.rs:1121:1
[INFO] [stdout]      |
[INFO] [stdout] 1121 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 28.82s
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> examples/ipc.rs:107:15
[INFO] [stdout]      |
[INFO] [stdout]  107 |           match tokio::time::timeout(tokio::time::Duration::from_secs(65), client.recv_message())
[INFO] [stdout]      |  _______________^
[INFO] [stdout]  108 | |             .await
[INFO] [stdout]      | |              ----^
[INFO] [stdout]      | |              |   |
[INFO] [stdout]      | |              |   this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      | |              |   up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      | |______________|___`__awaitee` calls a custom destructor
[INFO] [stdout]      |                |   `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      |                this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                `#1` will be dropped later as of Edition 2024
[INFO] [stdout]  109 |           {
[INFO] [stdout]  110 |               Ok(maybe_message) => match maybe_message {
[INFO] [stdout]      |                  -------------
[INFO] [stdout]      |                  |
[INFO] [stdout]      |                  `maybe_message` calls a custom destructor
[INFO] [stdout]      |                  `maybe_message` will be dropped later as of Edition 2024
[INFO] [stdout]  111 |                   Some(message) => {
[INFO] [stdout]      |                        -------
[INFO] [stdout]      |                        |
[INFO] [stdout]      |                        `message` calls a custom destructor
[INFO] [stdout]      |                        `message` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  123 |       }
[INFO] [stdout]      |       - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.2/src/bytes_mut.rs:1121:1
[INFO] [stdout]      |
[INFO] [stdout] 1121 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.40.0/src/runtime/time/entry.rs:652:1
[INFO] [stdout]      |
[INFO] [stdout]  652 | impl Drop for TimerEntry {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `__awaitee` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.40.0/src/runtime/time/entry.rs:652:1
[INFO] [stdout]      |
[INFO] [stdout]  652 | impl Drop for TimerEntry {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.2/src/bytes_mut.rs:1121:1
[INFO] [stdout]      |
[INFO] [stdout] 1121 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `maybe_message` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.2/src/bytes_mut.rs:1121:1
[INFO] [stdout]      |
[INFO] [stdout] 1121 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `message` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.7.2/src/bytes_mut.rs:1121:1
[INFO] [stdout]      |
[INFO] [stdout] 1121 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] crater-edition-check: golang-ipc-rs v0.1.1 (/opt/rustwide/workdir) updating edition from 2021 to 2024
[INFO] [stderr]     Checking golang-ipc-rs v0.1.1 (/opt/rustwide/workdir)
[INFO] [stdout] error: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/connection.rs:144:13
[INFO] [stdout]     |
[INFO] [stdout] 144 |             CONNECTION_LIST.push(stream);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: `#[deny(static_mut_refs)]` (part of `#[deny(rust_2024_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/connection.rs:148:18
[INFO] [stdout]     |
[INFO] [stdout] 148 |         unsafe { CONNECTION_LIST.pop().expect("Missing Stream Mock") }
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/connection.rs:155:13
[INFO] [stdout]     |
[INFO] [stdout] 155 |             LISTENER_LIST.push(listener);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/connection.rs:159:18
[INFO] [stdout]     |
[INFO] [stdout] 159 |         unsafe { LISTENER_LIST.pop().expect("Missing Stream Mock") }
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `golang-ipc-rs` (lib test) due to 4 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] running `Command { std: "docker" "inspect" "e923ae9a9e80def548a9c91079843860d3c9fb09f6d7ed87403737b7d1fcf23c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e923ae9a9e80def548a9c91079843860d3c9fb09f6d7ed87403737b7d1fcf23c", kill_on_drop: false }`
[INFO] [stdout] e923ae9a9e80def548a9c91079843860d3c9fb09f6d7ed87403737b7d1fcf23c
